9b1a1c5f0e9747cb263e9ccae2b91f45019bf497,src/main/java/mods/natura/worldgen/WhiteTreeGen.java,WhiteTreeGen,generateLeafNodeList,#World#,68
Before Change
}
else
{
for (double var9 = 0.5D; var7 < var1; ++var7)
{
double var11 = this.scaleWidth * var8 * (this.rand.nextFloat() + 0.328D);
double var13 = this.rand.nextFloat() * 2.0D * Math.PI;
int var15 = MathHelper.floor_double(var11 * Math.sin(var13) + this.basePos[0] + var9);
int var16 = MathHelper.floor_double(var11 * Math.cos(var13) + this.basePos[2] + var9);
int[] var17 = new int[] { var15, var3, var16 };
int[] var18 = new int[] { var15, var3 + this.leafDistanceLimit, var16 };
if (this.checkBlockLine(var17, var18, world) == -1)
{
int[] var19 = new int[] { this.basePos[0], this.basePos[1], this.basePos[2] };
double var20 = Math.sqrt(Math.pow(Math.abs(this.basePos[0] - var17[0]), 2.0D) + Math.pow(Math.abs(this.basePos[2] - var17[2]), 2.0D));
double var22 = var20 * this.branchSlope;
if (var17[1] - var22 > var5)
{
var19[1] = var5;
}
else
{
var19[1] = (int) (var17[1] - var22);
}
if (this.checkBlockLine(var19, var17, world) == -1)
After Change
this.height = this.heightLimit - 1;
}
int i = (int)(1.382D + Math.pow(this.leafDensity * (double)this.heightLimit / 13.0D, 2.0D));
if (i < 1)
{
i = 1;
}
int[][] aint = new int[i * this.heightLimit][4];
int j = this.basePos[1] + this.heightLimit - this.leafDistanceLimit;
int k = 1;
int l = this.basePos[1] + this.height;
int i1 = j - this.basePos[1];
aint[0][0] = this.basePos[0];
aint[0][1] = j;
aint[0][2] = this.basePos[2];
aint[0][3] = l;
--j;
while (i1 >= 0)
{
int j1 = 0;
float f = this.layerSize(i1);
if (f < 0.0F)
{
--j;
--i1;
}
else
{
for (double d0 = 0.5D; j1 < i; ++j1)
{
double d1 = this.scaleWidth * (double)f * ((double)this.rand.nextFloat() + 0.328D);
double d2 = (double)this.rand.nextFloat() * 2.0D * Math.PI;
int k1 = MathHelper.floor_double(d1 * Math.sin(d2) + (double)this.basePos[0] + d0);
int l1 = MathHelper.floor_double(d1 * Math.cos(d2) + (double)this.basePos[2] + d0);
int[] aint1 = new int[] {k1, j, l1};
int[] aint2 = new int[] {k1, j + this.leafDistanceLimit, l1};
if (this.checkBlockLine(aint1, aint2) == -1)
{
int[] aint3 = new int[] {this.basePos[0], this.basePos[1], this.basePos[2]};
double d3 = Math.sqrt(Math.pow((double)Math.abs(this.basePos[0] - aint1[0]), 2.0D) + Math.pow((double)Math.abs(this.basePos[2] - aint1[2]), 2.0D));
double d4 = d3 * this.branchSlope;
if ((double)aint1[1] - d4 > (double)l)
{
aint3[1] = l;
}
else
{
aint3[1] = (int)((double)aint1[1] - d4);
}
if (this.checkBlockLine(aint3, aint1) == -1)